Design Patterns and Category Theory

 

The recent thread "From Design Patterns to Category Theory" (on Y Combinator's "Hacker News") comments on essays by Mark Seeman and includes some delightful bits by various contributors:

  • "The point of design patterns is not just to solve particular problems, but to solve larger problems by putting together solutions to smaller problems in a coherent way. Category theory is just the right language for talking about putting things together." - danharaj
  • "Category theory ... has the potential to be a major cohesive force in the world, building rigorous bridges between disparate worlds, both theoretical and practical." - d-d, quoting Brendan Fong & David Spivak Seven Sketches in Compositionality
  • "I find it difficult to move from category theory to functional programming. I think it's because mathematics is more about a way of thinking than about the tools." - mikorym
  • "I've been saying for a few years that design patterns are algebras seen dimly." - madhadron
  • "Design patterns are a type of language... in fact Christopher Alexander, the architect who came up with the concept, talks about 'pattern languages' (and that's the title of his first book). And category theory is a language... it's a language much more suitable for talking about the kinds of abstractions we have to deal with in software engineering (and maybe mathematics or at least parts of mathematics as well). Design patterns help, but they're too fuzzy... category theory lets you say the same things much more precisely." - jbotz

(cf Greatest Inventions (2011-06-09), Category Theory Concepts (2016-04-25), Ultimate Abstraction (2017-08-24), Put the Vast Storehouse in Order (2017-10-04), Category Theory is like a Lighthouse (2018-12-24), Why Care about Category Theory (2019-03-03), ...) - ^z - 2019-06-12